﻿using HybridLab.Virtual.HyperV;
using HybridLab.Virtual.Interfaces;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HybridLab.Virtual.UnitTests
{
	[TestClass]
	public class CatalogTests
	{
		[TestMethod]
		public void TestCatalogTypes()
		{
			var types = VirtualHostCatalog.GetHostTypes();
			Assert.AreEqual(2, types.Count);
			CollectionAssert.Contains(types, "HyperV");
			CollectionAssert.Contains(types, "Test");
		}

		[TestMethod]
		public void TestGetHyperV()
		{
			var host = VirtualHostCatalog.GetHost("HyperV", "localhost");
			Assert.IsNotNull(host);
			Assert.IsInstanceOfType(host, typeof(HyperVHost));
		}
	}
}
